package eva.savant.business.contabilidad.service;

import eva.savant.businessobject.cg.*;
import eva.savant.businessobject.gl.Persona;

import java.math.BigDecimal;
import java.util.Date;

public interface TSContabilidad {

    public static final Integer PREASIENTO_EGR_FACTURA= 5;

    public static final Integer PREASIENTO_EGR_RECIBO= 6;

    public static final Integer PREASIENTO_DOC_CXC = 7;

    public static final Integer PREASIENTO_DOC_CXP = 8;

	public Asiento mergeAsiento(Asiento a) throws Exception;

    public Flujocaja mergeFlujocaja(Flujocaja a) throws Exception;

	public Ejercicio mergeEjercicio(Ejercicio e) throws Exception;

    public Preasiento mergePreasiento(Preasiento p) throws Exception;

    public Documento saveDocumento(Documento d) throws Exception;

    public Documento mergeDocumento(Documento d) throws Exception;

    public void anularDocumento(Documento d) throws Exception;

    public void valCredito(Persona p, Date d, BigDecimal monto) throws Exception;

    public Credito restaCredito(Persona p, BigDecimal monto) throws Exception;

    public Credito sumaCredito(Persona p, BigDecimal monto) throws Exception;
}
